tg-me.com/im5678/115
Last Update:
开发说明:
QoS(Quality of Service,服务质量)指一个网络能够利用各种基础技术,为指定的网络通信提供更好的服务能力, 是网络的一种安全机制, 是用来解决网络延迟和阻塞等问题的一种技术。在正常情况下,如果网络只用于特定的无时间限制的应用系统,并不需要QoS,比如Web应用,或E-mail设置等。但是对关键应用和多媒体应用就十分必要。当网络过载或拥塞时,QoS 能确保重要业务量不受延迟或丢弃,同时保证网络的高效运行。在RFC 3644上有对QoS的说明。
基本信息
中文名
服务质量
外文名
Quality of Service
简称
QoS
属性
为指定的网络通信提供服务能力
定义
功能简介
而当网络发生拥塞的时候,所有的数据流都有可能被丢弃;为满足用户对不同应用不同服务质量的要求,就需要网络能根据用户的要求分配和调度资源,对不同的数据流提供不同的服务质量:对实时性强且重要的数据报文优先处理;对于实时性不强的普通数据报文,提供较低的处理优先级,网络拥塞时甚至丢弃。QoS应运而生。支持QoS功能的设备,能够提供传输品质服务;针对某种类别的数据流,可以为它赋予某个级别的传输优先级,来标识它的相对重要性,并使用设备所提供的各种优先级转发策略、拥塞避免等机制为这些数据流提供特殊的传输服务。配置了QoS的网络环境,增加了网络性能的可预知性,并能够有效地分配网络带宽,更加合理地利用网络资源。
下面从QoS服务模型出发,对目前使用最多、最成熟的一些QoS技术逐一进行描述。在特定的环境下合理地使用这些技术,可以有效地提高服务质量。
服务模型
通常QoS提供以下三种服务模型:
l Best-Effort service(尽力而为服务模型)
l Integrated service(综合服务模型,简称Int-Serv)
l Differentiated service(区分服务模型,简称Diff-Serv)
1. Best-Effort服务模型是一个单一的服务模型,也是最简单的服务模型。对Best-Effort服务模型,网络尽最大的可能性来发送报文。但对延时、可靠性等性能不提供任何保证。
Best-Effort服务模型是网络的缺省服务模型,通过FIFO(first in first
out 先入先出)队列来实现。它适用于绝大多数网络应用,如FTP、E-Mail等。
2. Int-Serv服务模型Int-Serv是一个综合服务模型,它可以满足多种QoS需求。该模型使用资源预留协议(RSVP),RSVP运行在从源端到目的端的每个设备上,可以监视每个流,以防止其消耗资源过多。这种体系能够明确区分并保证每一个业务流的服务质量,为网络提供最细粒度化的服务质量区分。
但是,Inter-Serv模型对设备的要求很高,当网络中的数据流数量很大时,设备的存储和处理能力会遇到很大的压力。Inter-Serv模型可扩展性很差,难以在Internet核心网络实施。
3. Diff-Serv服务模型Diff-Serv是一个多服务模型,它可以满足不同的QoS需求。与Int-Serv不同,它不需要通知网络为每个业务预留资源。区分服务实现简单,扩展性较好。
相关介绍
产生背景
在因特网创建初期,没有意识到QoS应用的需要。因此,整个因特网运作如一个"竭尽全力"的系统。每段信息都有4个"服务类别"位和3个"优先级"位,但是他们完全没有派上用场。依发送和接收者看来,数据包从起点到终点的传输过程中会发生许多事情,并产生如下有问题的结果:
·丢失数据包- 当数据包到达一个缓冲器(buffer)已满的路由器时,则代表此次的发送失败,路由器会依网络的状况决定要丢弃、不丢弃一部份或者是所有的数据包,而且这不可能在预先就知道,接收端的应用程序在这时必须请求重新传送,而这同时可能造成总体传输严重的延迟。
·延迟- 或许需要很长时间才能将数据包传送到终点,因为它会被漫长的队列迟滞,或需要运用间接路由以避免阻塞;也许能找到快速、直接的路由。总之,延迟非常难以预料。
·传输顺序出错- 当一群相关的数据包被路由经过因特网时,不同的数据包可能选择不同的路由器,这会导致每个数据包有不同的延迟时间。最后数据包到达目的地的顺序会和数据包从发送端发送出去的顺序不一致,这个问题必须要有特殊额外的协议负责刷新失序的数据包。
·出错- 有些时候,数据包在被运送的途中会发生跑错路径、被合并甚至是毁坏的情况,这时接收端必须要能侦测出这些情况,并将它们统统判别为已遗失的数据包,再请求发送端再送一份同样的数据包。
释义
1.国际电信联盟(ITU)在x.902标准即"信息技术开放式处理参考模型"中定义服务质量(QoS)为:定义在一个或多个对象的集体行为上的一套质量需求的集合。吞吐量、传输延迟和错误率等一些服务质量参数描述了数据传输的速度和可靠性等。
2.在ATM中定义服务质量(QoS)为"关于ATM性能参数集合的术语,这些参数描述了在一个给定虚拟连接上数据流量的特征"。服务质量参数大多应用在较低层次的协议层上,这些参数并不直接被应用程序所观察和感觉到。这些参数包括信元丢失率、信元错误率、信元错误插入率、信元延迟变化、信元传输延迟和平均信元传输延迟。根据服务质量参数定义了五种服务级别,级别0指的是"尽最大努力"服务方式,在这种服务级别中没有特定的流量参数和绝对的服务质量保证。
3.IETF在研究ATM时就已经开始考虑服务质量的问题。即有陈述:"随着在网络上实时服务的逐步增加,在共享网络上要求提供确定的传输服务。这些确定的传输服务要求应用程序和网络基础设施有能力请求、设置和强化数据的传输。总的来说,这些服务指的是带宽预留和服务质量"。在"基于ATM的IP"中这样描述: "实时应用程序所使用的服务质量参数被假设在数据传输之前的资源预留协议中设置,或者以某种形式携带在数据之中"。"目前的工作正在重点研究服务质量参数怎样被表达出来和怎样做出本地的决定"。
处理流程
分类
Classifying即分类,其过程是根据信任策略或者根据分析每个报文的内容来确定将这些报文归类到以CoS值来表示的各个数据流中,因此分类动作的核心任务是确定输入报文的CoS值。分类发生在端口接收输入报文阶段,当某个端口关联了一个表示QoS策略的Policy-map后,分类就在该端口上生效,它对所有从该端口输入的报文起作用。
协议
有些协议非常"健谈",只要它们存在就会导致业务延迟,因此根据协议对数据包进行识别和优先级处理可以降QoS低延迟。应用可以通过它们的EtherType进行识别。譬如,AppleTalk协议采用0x809B,IPX使用0x8137。根据协议进行优先级处理是控制或阻止少数较老设备所使用的"健谈"协议的一种强有力方法。
(2) TCP和UDP端口号码
许多应用都采用一些TCP或UDP端口进行通信,如HTTP采用TCP端口80。通过检查IP数据包的端口号码,智能网络可以确定数据包是由哪类应用产生的,这种方法也称为第四层交换,因为TCP和UDP都位于OSI模型的第四层。
(3) 源IP地址
许多应用都是通过其源IP地址进行识别的。由于服务器有时是专门针对单一应用而配置的,如电子邮件服务器,所以分析数据包的源IP地址可以识别该数据包是由什么应用产生的。当识别交换机与应用服务器不直接相连,而且许多不同服务器的数据流都到达该交换机时,这种方法就非常有用。
(4) 物理端口号码
与源IP地址类似,物理端口号码可以指示哪个服务器正在发送数据。这种方法取决于交换机物理端口和应用服务器的映射关系。虽然这是最简单的分类形式,但是它依赖于直接与该交换机连接的服务器。
策略
Policing 即策略,发生在数据流分类完成后,用于约束被分类的数据流所占用的传输带宽。Policing动作检查被归类的数据流中的每一个报文,如果该报文超出了作用于该数据流的Police所允许的限制带宽,那么该报文将会被做特殊处理,它或者要被丢弃,或者要被赋予另外的DSCP 值。
在QoS
处理流程中,Policing 动作是可选的。如果没有Policing
动作,那么被分类的数据流中的报文的DSCP 值将不会作任何修改,报文也不会在送往Marking 动作之前被丢弃。
标识
Marking即标识,经过Classifying 和Policing 动作处理之后,为了确保被分类报文对应DSCP的值能够传递给网络上的下一跳设备,需要通过Marking 动作将为报文写入QoS 信息,可以使用QoS ACLs 改变报文的QoS信息,也可以使用Trust 方式直接保留报文中QoS 信息,例如,选择Trust DSCP 从而保留IP 报文头的DSCP 信息。
队列
Queueing即队列,负责将数据流中报文送往端口的某个输出队列中,送往端口的不同输出队列的报文将获得不同等级和性质的传输服务策略。
每一个端口上都拥有8 个输出队列,通过设备上配置的DSCP-to-CoS Map 和Cos-to-Queue Map 两张映射表来将报文的DSCP 值转化成输出队列号,以便确定报文应该被送往的输出队列。
调度
Scheduling即调度,为QoS 流程的最后一个环节。当报文被送到端口的不同输出队列上之后,设备将采用WRR 或者其它算法发送8 个队列中的报文。
BY 聊天软件定制开发(风车+飞鸽+哇呼+谭聊)功能最全最稳定的第三方聊天软件
Warning: Undefined variable $i in /var/www/tg-me/post.php on line 283
Share with your friend now:
tg-me.com/im5678/115